Transition between virtual reality and real world

ABSTRACT

Various systems and methods for virtual reality transitions are described herein. A head-mounted display system for providing virtual reality transitions includes a virtual reality transition engine to detect a trigger event initiated by a user of the head-mounted display; a sensor array to determine a real-world environmental condition; and a graphics driver to present virtual reality content in a format based on the real-world environmental condition.

TECHNICAL FIELD

Embodiments described herein generally relate to computing, and inparticular, to systems and methods for mixed reality transitions.

BACKGROUND

Augmented reality (AR) viewing may be defined as a live view of areal-world environment whose elements are supplemented (e.g., augmented)by computer-generated sensory input such as sound, video, graphics, orGPS data. Virtual reality (VR) viewing may be defined as a fullysimulated world, within which the viewer may interact. A head-mounteddisplay (HMD), also sometimes referred to as a helmet-mounted display,is a device worn on the head or as part of a helmet that is able toproject images in front of one or both eyes. An HMD may be used forvarious applications including AR or VR simulations. HMDs are used in avariety of fields such as military, gaming, sporting, engineering, andtraining

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, which are not necessarily drawn to scale, like numeralsmay describe similar components in different views. Like numerals havingdifferent letter suffixes may represent different instances of similarcomponents. Some embodiments are illustrated by way of example, and notlimitation, in the figures of the accompanying drawings in which:

FIG. 1 is a block diagram illustrating a virtual reality (VR) system,according to an embodiment;

FIG. 2 is a flowchart illustrating a process for transitioning from a VRenvironment to a real-world environment, according to an embodiment;

FIG. 3 is a flowchart illustrating a process for transitioning fromreal-world environment to a VR environment, according to an embodiment;

FIG. 4 is a block diagram illustrating an HMD that is capable oftransitioning between VR and real-world environments, according to anembodiment;

FIGS. 5A-C are schematic diagrams illustrating a transition from a VRenvironment to a real-world environment, according to an embodiment;

FIG. 6 is a flowchart illustrating a method for virtual realitytransitions, according to an embodiment; and

FIG. 7 is a block diagram illustrating an example machine upon which anyone or more of the techniques (e.g., methodologies) discussed herein mayperform, according to an example embodiment.

DETAILED DESCRIPTION

In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of some example embodiments. It will be evident, however,to one skilled in the art that the present disclosure may be practicedwithout these specific details.

Virtual reality (VR) makes a user feel completely immersed in analternative environment, but one aspect of VR that has not beenaddressed is how to smoothly transition a user from the virtual worldback to the real world. After a user's eyes dilate to a darkerenvironment in the virtual world, her eyes have to adjust quickly whenthe VR headset is removed and she finds herself in a bright environmentin the real world, which causes strain and squinting. In the oppositescenario, a user may remove the VR headset in a dark room where thedisplay setting on the VR headset brightness was extremely high, causingtemporary blindness until her eyes adjust to the dark real-worldenvironment.

A mechanism to address these situations, and others, is to configure theVR system to map environmental lighting/darkness, and otherenvironmental variables, in order to adjust the VR experience to matchthe position and intensity of the surrounding environment lights, soundlevels, scheduled activities, and other real-life aspects, to smooth thetransition from VR to real world. Alternatively, the VR system mayadjust the environment to be consistent with the VR experience.

Today's VR HMDs do not have a smooth transition from the virtual worldto the real world. Systems and methods described herein ease the userback into the real world when removing a VR HMD.

FIG. 1 is a block diagram illustrating a virtual reality (VR) system100, according to an embodiment. The VR system 100 may include ahead-mounted display 102 (HMD) and a server 150. The VR system 100 maybe installed and executed at a local site, such as at an office or home,or installed and executed from a remote site, such as a data center or acloud service. Portions of the VR system 100 may run locally while otherportions may run remotely (with respect to the local elements). The HMD102 may be communicatively coupled with the server 150 via a hardwiredconnection (e.g., DVI, DisplayPort, HDMI, VGA, Ethernet, USB, FireWire,AV cables, and the like), or via a wireless connection (e.g., Bluetooth,Wi-Fi, and the like).

The HMD 102 may include a transceiver 106, capable of both sending andreceiving data, and be controlled by a controller 108. The transceiver106 and controller 108 may be used to communicate over various wirelessnetworks, such as a Wi-Fi network (e.g., according to the IEEE 802.11family of standards); cellular network, for example, a network designedaccording to the Long-Term Evolution (LTE), LTE-Advanced, 5G, or GlobalSystem for Mobile Communications (GSM) families of standards; or thelike.

The HMD 102 may include Bluetooth hardware, firmware, and software toenable Bluetooth connectivity according to the IEEE 802.15 family ofstandards. In an example, the HMD 102 includes a Bluetooth radio 110controlled by Bluetooth firmware 112 and a Bluetooth host 114.

The HMD 102 may include a left display monitor 122 to display an imageto a left eye of a viewer 104, and a right display monitor 124 todisplay an image to a right eye of the viewer 104. However, this shouldnot be construed as limiting, as in some embodiments, the HMD 102 mayinclude only one video display, which may display both an imageassociated with the left eye and an image associated with the right eyeof the viewer, or may display a two-dimensional (2D) image on a set ofdisplay monitors.

The HMD 102 may also include a set of sensors 120. The sensors 120 mayinclude a digital still camera or video camera to receive images of theenvironment adjacent to or surrounding the HMD 102 or within a line ofsight of the HMD 102, e.g., the environment adjacent to or surroundingthe viewer 104 or within a line of sight of the viewer 104 when theviewer 104 is using the HMD 102. The environment may be considered to beadjacent to the viewer 104 when the viewer 104 can touch or interactwith the environment, e.g., when the viewer is seated near anotherperson on a train and can touch that person or have a conversation withthat person. The environment may also be considered to be surroundingthe viewer 104 when the viewer 104 is able to see the environment, e.g.,when the environment is within a line of sight of the viewer 104. Thedisplayed image may be modified to incorporate a representation of theimage of the environment within a line of sight of the HMD 102.

The sensors 120 may also include a microphone to receive audio of theenvironment. The sensors 120 may also include a motion detector, e.g.,an accelerometer, to detect movement of the HMD 102, e.g., movement ofthe viewer's head when the viewer 104 wears the HMD 102. The motiondetector may also detect other movements of the viewer 104, e.g., theviewer 104 sitting down, standing up, or head turning.

The sensors 120 may also include a proximity sensor to detect proximityof the HMD 102 to people or objects in the real-world environmentsurrounding the HMD 102. The sensors 120 may also include one or more oftemperature sensors, humidity sensors, light sensors, infrared (IR)sensors, heart rate monitors, vibration sensors, tactile sensors,conductance sensors, etc., to sense the viewer's activities and currentstate, accept input, and also to sense information about the viewer'senvironment.

An operating system 116 may interface with the controller 108 andBluetooth host 114. The operating system 116 may be a desktop operatingsystem, embedded operating system, real-time operating system,proprietary operating system, network operating system, and the like.Examples include, but are not limited to, Windows® NT (and itsvariants), Windows® Mobile, Windows® Embedded, Mac OS®, Apple iOS, AppleWatchOS®, UNIX, Android™, JavaOS, Symbian OS, Linux, and other suitableoperating system platforms.

A communication controller (not shown) may be implemented in hardware,in firmware, or in the operating system 116. The communicationcontroller may act as an interface with various hardware abstractionlayer (HAL) interfaces, e.g., device drivers, communication protocolstacks, libraries, and the like. The communication controller isoperable to receive user input (e.g., from a system event or by anexpress system call to the communication controller), and interact withlower-level communication devices (e.g., Bluetooth radio, Wi-Fi radio,cellular radio, etc.) based on the user input. The communicationcontroller may be implemented, at least in part, in a user-levelapplication that makes calls to one or more libraries, deviceinterfaces, or the like in the operating system 116, to causecommunication devices to operate in a certain manner.

A user application space 118 on the HMD 102 is used to implementuser-level applications, controls, user interfaces, and the like, forthe viewer 104 to control the HMD 102. An application, app, extension,control panel, or other user-level executable software program may beused to control access to the HMD 102. For example, an executable file,such as an app, may be installed on the HMD 102 and operable tocommunicate with a host application installed on the server 150. Asanother example, an application executing in user application space 118(or OS 116) may work with the sensors 120 to detect gestures performedby the viewer 104.

The server 150 may include an operating system 156, a file system,database connectivity, radios, or other interfaces to provide a VRexperience to the HMD 102. In particular, the server 150 may include, orbe communicatively connected to, a radio transceiver 152 to communicatewith the HMD 102. A respective controller 154 may control the radiotransceiver 152 of the server 150, which in turn may be connected withand controlled via the operating system 156 and user-level applications158.

In operation, the viewer 104 may interact with a VR environment usingthe HMD 102. When the viewer 104 is ready to exit the VR environment,the viewer 104 may perform some triggering action. The action may be akeyword the viewer 104 speaks, a trigger gesture that the viewer 104performs, or a user interface (e.g., a button the HMD 102) that theviewer 104 presses. This is a non-limited list of actions and it isunderstood that additional actions, or combinations of actions, may beperformed to indicate that the viewer 104 is ready to exit the VRenvironment. In response, the HMD 102 may begin displaying images to theviewer 104 to transition the viewer 104 from the VR environment to thereal-world environment. The transition may be controlled by the HMD 102or by the server 150.

FIG. 2 is a flowchart illustrating a process 200 for transitioning froma VR environment to a real-world environment, according to anembodiment. The external lighting is measured by a sensor array on theHMD. The lighting may be measured using one or more luminosity sensors,one or more cameras, one or more light meters, or the like to measurelight intensity, direction, or color. Sensors may be disposed around thefront or sides of the HMD. Additionally, the HMD may include a headband,helmet, or other support apparatus to position the HMD in place on theuser's head. Sensors may be disposed on or around such supportapparatus.

The user/wearer may initiate an exit from a virtual reality environment(operation 204). The user may initiate such an intent to exit using avoice command, gesture, user interface component, or the like. Forinstance, the user may press a button on the HMD to suspend the HMDoperation and terminate a VR session.

The external lighting (e.g., real-world lighting) is compared to thedisplayed lighting in the VR environment. If the external lighting isbrighter (operation 206), then the HMD content in the VR environment istransitioned to a brighter image (operation 208). The HMD content may becustomized to mimic the external real-world environment's lightingcharacteristics (operation 216). For instance, if there is a bright lampin a certain position of the user's field of view, then the HMD contentmay be modified to bring up a brighter spot in the relative positon ofthe lamp. In an example, the color of the external light, along with itsposition and intensity, is reproduced in the HMD content. Using thistype of transition effect, the HMD prepares the user's eyes to theactual real-world environment so that when the user removes the HMD fromtheir head, the user's eyes are already adjusted for the real-worldambient light. The user may avoid physical discomfort associated withflash blindness. Flash blindness is a temporary blindness caused byexposure to a bright flash of light that oversaturates the retinapigments.

If the external lighting is darker than the HMD content (operation 210),then the HMD content may be darkened (operation 212). This may avoidsome complications with dark adaptation. Dark adaptation refers to thechange in sensitivity of rods and cones in a human retina as eachincreases sensitivity to light in a dim environment. Cones are moresensitive to light, but take longer to adjust when going from a lightenvironment to a dim environment. As such, darkening the HMD content(operation 212) helps to begin dark adaptation earlier before exitingthe VR session. The darkened HMD content is displayed (operation 216).

It is understood that the brightening operation 208 or the darkeningoperation 212 may be repeated several times to slowly bring up the lightintensity or bring down the light intensity, respectively. Thus, theprocess 200 may flow from operation 208 to operation 216 several timesto lighten content over time. Alternatively, the process 200 may flowfrom operation 212 to operation 216 several times to darken content overtime.

In an example, the user may initiate the VR exit (operation 204)relatively early to when they actually want to end the VR session. Forexample, the user may initiate VR exit ten minutes before exiting.During the ten-minute countdown, the scenes in the VR session may beadapted to slowly integrate the light composition of the user'sreal-world environment. The longer lead time may assist the user inadapting for certain lighting conditions. For instance, cones in theuser's retina may take up two thirty minutes to fully adapt to a dimenvironment. By using a longer lead time, the cones are provided moretime to adjust and the user will not exit the VR session being nightblind.

If there is no lighting difference between the VR content and thereal-world environment (operation 214), then the VR content is displayedwithout modification (operation 216).

While FIG. 2 discusses a VR environment, it is understood that an ARenvironment may be similarly adjusted for the user. For instance, in anAR environment, if an AR content element is blocking a bright lightsource (e.g., a ceiling light), before removing the AR content element,the visual properties of the AR content element may be adjusted to allowthe user's eyes to adapt to the real-world lighting conditions. Forinstance, the AR content element may be displayed with progressivelytranslucent values (e.g., fade away). As another example, the AR contentmay be modified with an increasingly bright spot drawn on the content.

FIG. 3 is a flowchart illustrating a process 300 for transitioning fromreal-world environment to a VR environment, according to an embodiment.Similar to the functionality illustrated in FIG. 2, in FIG. 3 the HMDcontent is modified to assist the user as the user enters a VR session.At 302, the external lighting is measured. This may be performed as theuser is placing the HMD on their head, for example. Alternatively, thismeasurement operation may be performed in response to when the userinitiates a VR session (operation 304).

If the external lighting is brighter than the HMD content that will bedisplayed to the user (operation 306), then the HMD content is initiallypresented with a bright modification (operation 308). This modified HMDcontent is displayed (operation 316) and then further modified over timeto eventually display the HMD content in its original format (operation318). This process allows the user's eyes to adjust to a dark scene inthe HMD content, allowing the user to avoid night blindness andimproving the user experience.

If the external lighting is darker than the HMD content that will bedisplayed to the user (operation 310), then the HMD content is initiallypresented with a dark modification (operation 312). This modified HMDcontent is displayed (operation 316) and then further modified over timeto eventually display the HMD content in its original format (operation318). This process allows the user's eyes to adjust to a light scene inthe HMD content, allowing the user to avoid flash blindness andimproving the user experience.

When the external lighting is similar or the same as the HMD contentlight, then no adjustment is used (operation 314), and the HMD contentis displayed in its original format (operation 316). Modifications fromthe initial displayed HMD content is unused in this flow.

While FIGS. 2 and 3 refer to adjusting light levels in HMD content totransition a user from dark to light, or light to dark, environments, inother embodiments, sound levels may be adjusted in a similar manner manyVR environments include a sound component to more fully envelope a userin a VR world. Depending on the implementation for such sound effects,the user may be unaware of the real-world sound characteristics. Forinstance, if the real-world is noisy and the VR world is relativelyquiet, when ending a VR session the user may be jarred as they exit thequiet VR session and reemerge into the loud real-world environment. Toease the transition, the HMD may measure the real-world noise level andadjust the HMD content to acclimate the user to the real world noiselevel before ending the VR session. As an example, a user may be ridinga commuter train and engage in a VR session. The VR session may simulatea quiet walk through a woodland area. As the VR ends, background noisemay be slowly increased to bring the user out of the VR environmentslowly.

Additionally, the HMD may control external lighting to further assistthe transition from VR/AR content to real-world. For example, theexternal real-world lighting may be controlled by an environmentalcontrol, such as an electronic dimmer switch. The HMD may be coupled tothe environmental control and adjust the external lighting to be closerto that in the VR or AR content. When the user removes the HMD, thereduced or increased lighting in the external real-world lighting mayassist in the transition. After the user removes the HMD, the externallighting may be adjusted back to a previous setting. As an example,before the user removes their HMD, the external lighting may be at amaximum brightness for the room. Just before the user removes the HMD,the brightness may be reduced to 40% to match the VR content brightnesslevel. After the user removes the HMD, the external real-world lightingmay be increased gradually until it reaches 100% brightness again.External environmental controls may be used in combination with alteringthe brightness of VR or AR content.

FIG. 4 is a block diagram illustrating an HMD 400 that is capable oftransitioning between VR and real-world environments, according to anembodiment. The HMD 400 includes a sensor array 402, a VR transitionengine 404, a light array 406, a graphics driver 408, a display 410, aprocessor subsystem 412, and memory 414.

The HMD 400 is equipped with onboard systems that monitor the state ofthe HMD 400 and automatically adjust the display 410 provided by the HMD400 based on the state. The HMD 400 may be equipped with one or moresensors (e.g., accelerometers, gyrometers, or magnetometers) todetermine the state of the HMD 400 and optionally the state of the user.

The sensor array 402 may include various sensors such as cameras, lightmeters, microphones, or the like to monitor the environment around theuser of the HMD 400. The sensor array 402 may include one or morecameras able to capture visible light, infrared, or the like, and may beused as 2D or 3D cameras (e.g., depth camera). The sensor array 402 maybe configured to detect a gesture made by the user (wearer) and theprocessor subsystem 412 may use the gesture to trigger a transitionprocess.

The HMD 400 may optionally include one or more inward facing sensors(not shown) to sense the user's face, skin, or eyes, and determine arelative motion between the HMD 400 and the detected face, skin, oreyes. The inward facing sensors may be mounted to an interior portion ofthe HMD 400, such as in the goggles housing, on the lens, or on aprojecting portion of the HMD 400, in various embodiments. The relativemotion of the user's head and eyes may be used to move the user'sperspective in the VR environment. In addition, the relative motion maybe used to move a brightened area in the VR world to track light sourcesin the real world, so as the user moves their head around, thebrightened area is localized and tracks the position of the real-worldlight source.

The HMD 400 includes a display 410. An image or multiple images may beprojected onto the display 410, such as is done by a microdisplay.Alternatively, some or all of the display 410 may be an active display(e.g., an organic light-emitting diode (OLED)) able to produce an imagein front of the user. The display 410 also may be provided using retinalprojection of various types of light, using a range of mechanisms,including (but not limited to) waveguides, scanning raster,color-separation and other mechanisms. In some examples, the display 410is able to produce a high dynamic range to match real-worldcharacteristics.

The VR transition engine 404 may be implemented in hardware, as hardwareconfigured by software, or as a service provided by the processorsubsystem 412. The VR transition engine 404 monitors the sensor array402 to detect when the user initiates an exit from a VR session. The VRtransition engine 404 may then interact with the graphics driver 408 tomodify video frames that are output to the display 410. Themodifications may be to brighten or darken the VR environment, orportions of the VR environment. Using the sensor array 402, the VRtransition engine 404 may determine an approximate location of a lightsource in the real-world environment, and cause the graphics driver 408to draw a brightened in the VR environment. The location of the lightsource may be stored so that as the user moves their head around in theVR world, the brightened area corresponding to the real-world light islocalized and tracks the position of the real-world light source.

An optional light array 406 may be disposed on or around the HMD 400.For example, the light array 406 may include light-emitting diodes (LED)on the interior of the HMD 400 to illuminate a portion of the user'sface, including the user's eyes, to help the user adjust to a brighterambient light. Lights may be activated in coordination with thereal-world light source. For example, if the user is facing forward anda ceiling light is shining down at her from a 45 degree angle left fromstraight ahead, and 60 degree angle from horizontal, lights in the upperleft corner of the HMD 400 may be activated to simulate the roomlighting. The intensity, color, and position may be reproduced totransition the user from the VR experience into the real-worldexperience. The light array 406 may be used alone or in combination withmodifications to the HMD output being displayed on the display 410.

The memory 414 may include instructions to perform the various functionsdescribed herein, which when executed by the processor subsystem 412 mayimplement the functions. The memory 414 may also include user profilesto configure or control the transition. User profiles may define thelength of the transition period, lighting preferences, soundpreferences, triggering actions, etc.

FIGS. 5A-C are schematic diagrams illustrating a transition from a VRenvironment to a real-world environment, according to an embodiment.FIG. 5A illustrates a real-world environment 500, such as a home officeor some other space. The real-world environment includes two ceilinglights 502A, 502B (collectively referred to as 502). The ceiling lights502 have a high intensity, localized area near the recess that housesthe ceiling light 502 and more dispersed light around the rest of theenvironment 500.

FIG. 5B illustrates a VR environment 550 that the user is viewing whilein the real-world environment 500. It is assumed that the user is facingthe same direction as that depicted in FIG. 5A. However, while in the VRenvironment 550, all of the real-world lighting composition is obscuredby the HMD. The VR environment 550 may be a night scene, such that theambient light in the VR environment 550 may be low.

FIG. 5C illustrates a portion of the transition process where theceiling lights 502 are represented as localized brightened areas 552,554 in the VR environment 550. The bright areas 552, 554 may being asrelatively dim highlights, and then over time increase in intensity, andoptionally change color, to mimic the real-world lighting 502. Theentire scene in the VR environment 550 may also be optionally brightenedto more closely match the ambient lighting in the real-world environment500.

Thus, returning to FIG. 4, the HMD 400 is a system for providing virtualreality transitions, that includes a VR transition engine 404 to detecta trigger event initiated by a user of the head-mounted display; asensor array 402 to determine a real-world environmental condition; anda graphics driver 408 to present virtual reality content in a formatbased on the real-world environmental condition.

In an embodiment, to detect the trigger event, the VR transition engine404 is to detect a voice command issued by the user. In a relatedembodiment, to detect the trigger event, the VR transition engine 404 isto detect a gesture made by the user. In a related embodiment, to detectthe trigger event, the VR transition engine 404 is to detect a userinterface interaction performed by the user. In a related embodiment, todetect the trigger event, the VR transition engine 404 is to detect abutton press performed by the user.

To adjust the VR content appropriately, the HMD 400 monitors theenvironmental conditions (e.g., light, noise) around the user. Thus, inan embodiment, to determine the real-world environmental condition, thesensor array 402 is to access sensor data including luminance datadescribing an environment around the user. In a further embodiment, theluminance data is obtained from a camera array. The camera array mayinclude one or more cameras able to detect visible light, infraredlight, or the like.

In another embodiment, the luminance data is obtained from a lightmeter. Multiple light meters may be disposed around the crown of auser's head (e.g., on an HMD's headband or other support member). Thelight meters may provide some insight into directionality of strongerlight sources and their position relative to the direction the user isfacing. As the user turns toward a brighter light, the VR content may beadjusted with brighter portions to account of the brighter exteriorenvironment.

In another embodiment, the luminance data is obtained from a luminositysensor. A luminosity sensor is similar to a light meter. However, aluminosity sensor may have a wider range of detectible light (e.g., thefull spectrum of visible light), more accurate readings, and be packagedin smaller form factors. For example, some luminosity sensors may detectas little as 188 microLux and as much as 88,000 Lux.

In another embodiment, to determine the real-world environmentalcondition, the sensor array 402 is to access sensor data including noisedata describing an environment around the user. The noise data mayobtained from a microphone coupled to the head-mounted display 410.Directionality of noise may be accounted for as well.

Based on the light level of the real-world environment, the VR contentmay be adjusted in different ways. If the light level is brighter in thereal-world, then the VR content may be brightened to acclimate the user.Thus, in an embodiment, to present virtual reality content in the formatbased on the real-world environmental condition, the graphics driver 408is to determine a location and an intensity of a real-world light sourcein an environment around the user and present a bright area in thevirtual reality content in a position that corresponds with the locationof the real-world light source. In a further embodiment, the graphicsdriver 408 is to adjust the bright area from a first brightness level toa second brightness level, the second brightness level closer to theintensity of the real-world light source than the first brightnesslevel.

This adjustment may be performed over a period of time to allow the userto adjust gradually. The period may be a few seconds (e.g., 20 seconds)or longer. Because people adjust to bright light faster than they adjustto dark environments, less time is typically needed for a person toadjust to a well-lit area than the opposite. Thus, in an embodiment, toadjust the bright area, the graphics driver 408 is to adjust the brightarea from the first brightness level to the second brightness level overa period.

In an embodiment, the VR transition engine 404 is to determine a colorof the real-world light source, and the graphics driver 408 is topresent the bright area using a color that is similar to the color ofthe real-world light source.

In some situations, such as where a user is in a bright environment andfirst puts on an HMD 400, the content in the HMD 400 may be too dark forthe user to make out (e.g., eyes not adjusted for dim environment). Assuch, the HMD 400 may initially present the VR content in abrighter-than-usual format, and then over time reduce the brightness toarrive at the original format. As such, in an embodiment, the graphicsdriver is to gradually dim the virtual reality content over a period,the dimming causing initially brightened virtual reality content to bedimmed until the virtual reality content is displayed in a sourceformat.

Turning to the opposite situation wherein the user is transitioned to adark environment or is beginning a VR session in a dark environment, thebrightness of VR content may be adjusted to transition the user from orto such an environment.

In an embodiment, to present virtual reality content in the format basedon the real-world environmental condition, the graphics driver 408 is todetermine a brightness level of an environment around the user and dimthe virtual reality content closer to the brightness level of thereal-world environment, when the brightness level of the real-worldenvironment is less than a brightness level of the virtual realitycontent. This may occur as the user exits the VR content and may occurover a longer period of time. In an embodiment, to dim the virtualreality content, the graphics driver is to gradually dim the virtualreality content over a period. In a further embodiment, the period is atleast five minutes.

The dimming of VR content may also occur when the user first puts on theHMD 400. So later, as the user is adjusting to the VR content, thebrightness may be increased. In an embodiment, the graphics driver 408is to gradually brighten the virtual reality content over a period, thebrightening causing initially dimmed virtual reality content to bebrightened to until the virtual reality content is displayed in a sourceformat.

Ambient noise may also be accounted for as the user is transitioned fromor to a VR environment. In an embodiment, to present virtual realitycontent in the format based on the real-world environmental condition,the VR transition engine 404 is to determine a noise level of anenvironment around the user and gradually increase a noise level of thevirtual reality content to be closer to the noise level of theenvironment around the user, when the noise level of the real-worldenvironment is greater than the noise level of the virtual realitycontent.

FIG. 6 is a flowchart illustrating a method 600 for virtual realitytransitions, according to an embodiment. At 602, a trigger eventinitiated by a user of a head-mounted display, is detected at thehead-mounted display. At 604, a real-world environmental condition isdetermined. At 606, virtual reality content is presented, by ahead-mounted display, in a format based on the real-world environmentalcondition.

In an embodiment, detecting the trigger event comprises detecting avoice command issued by the user. In a related embodiment, detecting thetrigger event comprises detecting a gesture made by the user. In arelated embodiment, detecting the trigger event comprises detecting auser interface interaction performed by the user. In a relatedembodiment, detecting the trigger event comprises detecting a buttonpress performed by the user. The button may be disposed on a housing ofthe head-mounted display.

In an embodiment, determining the real-world environmental conditioncomprises accessing sensor data including luminance data describing anenvironment around the user. In a further embodiment, the luminance datais obtained from a camera array. In a related embodiment, the luminancedata is obtained from a light meter. In a related embodiment, theluminance data is obtained from a luminosity sensor.

In an embodiment, determining the real-world environmental conditioncomprises accessing sensor data including noise data describing anenvironment around the user. In a further embodiment, the noise data isobtained from a microphone coupled to the head-mounted display.

In an embodiment, presenting virtual reality content in the format basedon the real-world environmental condition comprises determining alocation and an intensity of a real-world light source in an environmentaround the user and presenting a bright area in the virtual realitycontent in a position that corresponds with the location of thereal-world light source. In a further embodiment, the method 600includes adjusting the bright area from a first brightness level to asecond brightness level, the second brightness level closer to theintensity of the real-world light source than the first brightnesslevel. In a further embodiment, adjusting the bright area comprisesadjusting the bright area from the first brightness level to the secondbrightness level over a period.

In another embodiment, the method 600 includes determining a color ofthe real-world light source and presenting the bright area using a colorthat is similar to the color of the real-world light source.

In another embodiment, the method 600 includes gradually dimming thevirtual reality content over a period, the dimming causing initiallybrightened virtual reality content to be dimmed until the virtualreality content is displayed in a source format. In this embodiment,after initially displaying the content near the room's light intensity,the VR content may be dimmed until it is in the source format (e.g., thelighting effects as originally designed by the producer of the VRcontent).

In an embodiment, presenting virtual reality content in the format basedon the real-world environmental condition comprises determining abrightness level of an environment around the user and dimming thevirtual reality content closer to the brightness level of the real-worldenvironment, when the brightness level of the real-world environment isless than a brightness level of the virtual reality content. In afurther embodiment, dimming the virtual reality content comprisesgradually dimming the virtual reality content over a period. Ittypically takes longer for a person to adjust to dark environments afterbeing in a brightly-lit environment. So the time period may be longerthan a few seconds or minutes. In a further embodiment, the period is atleast five minutes.

In some situations, the VR content is initially dimmed after the userbegins a VR session. The dimmed content is used to provide an easiertransition from a dim real-world environment to a VR environment.However, after some time, the user is transitioned to the fully-lit VRenvironment. As such, in an embodiment, the method 600 includesgradually brightening the virtual reality content over a period, thebrightening causing initially dimmed virtual reality content to bebrightened to until the virtual reality content is displayed in a sourceformat.

In addition to display brightness, or in the alternative, the user maybe provided a transition for noise levels. In an embodiment, presentingvirtual reality content in the format based on the real-worldenvironmental condition comprises determining a noise level of anenvironment around the user and gradually increasing a noise level ofthe virtual reality content to be closer to the noise level of theenvironment around the user, when the noise level of the real-worldenvironment is greater than the noise level of the virtual realitycontent.

Embodiments may be implemented in one or a combination of hardware,firmware, and software. Embodiments may also be implemented asinstructions stored on a machine-readable storage device, which may beread and executed by at least one processor to perform the operationsdescribed herein. A machine-readable storage device may include anynon-transitory mechanism for storing information in a form readable by amachine (e.g., a computer). For example, a machine-readable storagedevice may include read-only memory (ROM), random-access memory (RAM),magnetic disk storage media, optical storage media, flash-memorydevices, and other storage devices and media.

A processor subsystem may be used to execute the instruction on themachine-readable medium. The processor subsystem may include one or moreprocessors, each with one or more cores. Additionally, the processorsubsystem may be disposed on one or more physical devices. The processorsubsystem may include one or more specialized processors, such as agraphics processing unit (GPU), a digital signal processor (DSP), afield programmable gate array (FPGA), or a fixed function processor.

Examples, as described herein, may include, or may operate on, logic ora number of components, modules, or mechanisms. Modules may be hardware,software, or firmware communicatively coupled to one or more processorsin order to carry out the operations described herein. Modules may behardware modules, and as such modules may be considered tangibleentities capable of performing specified operations and may beconfigured or arranged in a certain manner. In an example, circuits maybe arranged (e.g., internally or with respect to external entities suchas other circuits) in a specified manner as a module. In an example, thewhole or part of one or more computer systems (e.g., a standalone,client or server computer system) or one or more hardware processors maybe configured by firmware or software (e.g., instructions, anapplication portion, or an application) as a module that operates toperform specified operations. In an example, the software may reside ona machine-readable medium. In an example, the software, when executed bythe underlying hardware of the module, causes the hardware to performthe specified operations. Accordingly, the term hardware module isunderstood to encompass a tangible entity, be that an entity that isphysically constructed, specifically configured (e.g., hardwired), ortemporarily (e.g., transitorily) configured (e.g., programmed) tooperate in a specified manner or to perform part or all of any operationdescribed herein. Considering examples in which modules are temporarilyconfigured, each of the modules need not be instantiated at any onemoment in time. For example, where the modules comprise ageneral-purpose hardware processor configured using software; thegeneral-purpose hardware processor may be configured as respectivedifferent modules at different times. Software may accordingly configurea hardware processor, for example, to constitute a particular module atone instance of time and to constitute a different module at a differentinstance of time. Modules may also be software or firmware modules,which operate to perform the methodologies described herein.

Circuitry or circuits, as used in this document, may comprise, forexample, singly or in any combination, hardwired circuitry, programmablecircuitry such as computer processors comprising one or more individualinstruction processing cores, state machine circuitry, and/or firmwarethat stores instructions executed by programmable circuitry. Thecircuits, circuitry, or modules may, collectively or individually, beembodied as circuitry that forms part of a larger system, for example,an integrated circuit (IC), system on-chip (SoC), desktop computers,laptop computers, tablet computers, servers, smart phones, etc.

FIG. 7 is a block diagram illustrating a machine in the example form ofa computer system 700, within which a set or sequence of instructionsmay be executed to cause the machine to perform any one of themethodologies discussed herein, according to an example embodiment. Inalternative embodiments, the machine operates as a standalone device ormay be connected (e.g., networked) to other machines. In a networkeddeployment, the machine may operate in the capacity of either a serveror a client machine in server-client network environments, or it may actas a peer machine in peer-to-peer (or distributed) network environments.The machine may be a head-mounted display, wearable device, personalcomputer (PC), a tablet PC, a hybrid tablet, a personal digitalassistant (PDA), a mobile telephone, or any machine capable of executinginstructions (sequential or otherwise) that specify actions to be takenby that machine. Further, while only a single machine is illustrated,the term “machine” shall also be taken to include any collection ofmachines that individually or jointly execute a set (or multiple sets)of instructions to perform any one or more of the methodologiesdiscussed herein. Similarly, the term “processor-based system” shall betaken to include any set of one or more machines that are controlled byor operated by a processor (e.g., a computer) to individually or jointlyexecute instructions to perform any one or more of the methodologiesdiscussed herein.

Example computer system 700 includes at least one processor 702 (e.g., acentral processing unit (CPU), a graphics processing unit (GPU) or both,processor cores, compute nodes, etc.), a main memory 704 and a staticmemory 706, which communicate with each other via a link 708 (e.g.,bus). The computer system 700 may further include a video display unit710, an alphanumeric input device 712 (e.g., a keyboard), and a userinterface (UI) navigation device 714 (e.g., a mouse). In one embodiment,the video display unit 710, input device 712 and UI navigation device714 are incorporated into a touch screen display. The computer system700 may additionally include a storage device 716 (e.g., a drive unit),a signal generation device 718 (e.g., a speaker), a network interfacedevice 720, and one or more sensors (not shown), such as a globalpositioning system (GPS) sensor, compass, accelerometer, gyrometer,magnetometer, or other sensor.

The storage device 716 includes a machine-readable medium 722 on whichis stored one or more sets of data structures and instructions 724(e.g., software) embodying or utilized by any one or more of themethodologies or functions described herein. The instructions 724 mayalso reside, completely or at least partially, within the main memory704, static memory 706, and/or within the processor 702 during executionthereof by the computer system 700, with the main memory 704, staticmemory 706, and the processor 702 also constituting machine-readablemedia.

While the machine-readable medium 722 is illustrated in an exampleembodiment to be a single medium, the term “machine-readable medium” mayinclude a single medium or multiple media (e.g., a centralized ordistributed database, and/or associated caches and servers) that storethe one or more instructions 724. The term “machine-readable medium”shall also be taken to include any tangible medium that is capable ofstoring, encoding or carrying instructions for execution by the machineand that cause the machine to perform any one or more of themethodologies of the present disclosure or that is capable of storing,encoding or carrying data structures utilized by or associated with suchinstructions. The term “machine-readable medium” shall accordingly betaken to include, but not be limited to, solid-state memories, andoptical and magnetic media. Specific examples of machine-readable mediainclude non-volatile memory, including but not limited to, by way ofexample, semiconductor memory devices (e.g., electrically programmableread-only memory (EPROM), electrically erasable programmable read-onlymemory (EEPROM)) and flash memory devices; magnetic disks such asinternal hard disks and removable disks; magneto-optical disks; andCD-ROM and DVD-ROM disks.

The instructions 724 may further be transmitted or received over acommunications network 726 using a transmission medium via the networkinterface device 720 utilizing any one of a number of well-knowntransfer protocols (e.g., HTTP). Examples of communication networksinclude a local area network (LAN), a wide area network (WAN), theInternet, mobile telephone networks, plain old telephone (POTS)networks, and wireless data networks (e.g., Bluetooth, Wi-Fi, 3G, and 4GLTE/LTE-A or WiMAX networks). The term “transmission medium” shall betaken to include any intangible medium that is capable of storing,encoding, or carrying instructions for execution by the machine, andincludes digital or analog communications signals or other intangiblemedium to facilitate communication of such software.

Additional Notes & Examples

Example 1 is a head-mounted display system for providing virtual realitytransitions, the system comprising: a virtual reality transition engineto detect a trigger event initiated by a user of the head-mounteddisplay; a sensor array to determine a real-world environmentalcondition; and a graphics driver to present virtual reality content in aformat based on the real-world environmental condition.

In Example 2, the subject matter of Example 1 optionally includeswherein to detect the trigger event, the virtual reality transitionengine is to detect a voice command issued by the user.

In Example 3, the subject matter of any one or more of Examples 1-2optionally include wherein to detect the trigger event, the virtualreality transition engine is to detect a gesture made by the user.

In Example 4, the subject matter of any one or more of Examples 1-3optionally include wherein to detect the trigger event, the virtualreality transition engine is to detect a user interface interactionperformed by the user.

In Example 5, the subject matter of any one or more of Examples 1-4optionally include wherein to detect the trigger event, the virtualreality transition engine is to detect a button press performed by theuser.

In Example 6, the subject matter of any one or more of Examples 1-5optionally include wherein to determine the real-world environmentalcondition, the sensor array is to access sensor data including luminancedata describing an environment around the user.

In Example 7, the subject matter of Example 6 optionally includeswherein the luminance data is obtained from a camera array.

In Example 8, the subject matter of any one or more of Examples 6-7optionally include wherein the luminance data is obtained from a lightmeter.

In Example 9, the subject matter of any one or more of Examples 6-8optionally include wherein the luminance data is obtained from aluminosity sensor.

In Example 10, the subject matter of any one or more of Examples 1-9optionally include wherein to determine the real-world environmentalcondition, the sensor array is to access sensor data including noisedata describing an environment around the user.

In Example 11, the subject matter of Example 10 optionally includeswherein the noise data is obtained from a microphone coupled to thehead-mounted display.

In Example 12, the subject matter of any one or more of Examples 1-11optionally include wherein to present virtual reality content in theformat based on the real-world environmental condition, the graphicsdriver is to: determine a location and an intensity of a real-worldlight source in an environment around the user; and present a brightarea in the virtual reality content in a position that corresponds withthe location of the real-world light source.

In Example 13, the subject matter of Example 12 optionally includeswherein the graphics driver is to adjust the bright area from a firstbrightness level to a second brightness level, the second brightnesslevel closer to the intensity of the real-world light source than thefirst brightness level.

In Example 14, the subject matter of Example 13 optionally includeswherein to adjust the bright area, the graphics driver is to adjust thebright area from the first brightness level to the second brightnesslevel over a period.

In Example 15, the subject matter of any one or more of Examples 12-14optionally include wherein the VR transition engine is to determine acolor of the real-world light source, and wherein the graphics driver isto present the bright area using a color that is similar to the color ofthe real-world light source.

In Example 16, the subject matter of any one or more of Examples 12-15optionally include wherein the graphics driver is to gradually dim thevirtual reality content over a period, the dimming causing initiallybrightened virtual reality content to be dimmed until the virtualreality content is displayed in a source format.

In Example 17, the subject matter of any one or more of Examples 1-16optionally include wherein to present virtual reality content in theformat based on the real-world environmental condition, the graphicsdriver is to: determine a brightness level of an environment around theuser; and dim the virtual reality content closer to the brightness levelof the real-world environment, when the brightness level of thereal-world environment is less than a brightness level of the virtualreality content.

In Example 18, the subject matter of Example 17 optionally includeswherein to dim the virtual reality content, the graphics driver is togradually dim the virtual reality content over a period.

In Example 19, the subject matter of Example 18 optionally includeswherein the period is at least five minutes.

In Example 20, the subject matter of any one or more of Examples 17-19optionally include wherein the graphics driver is to gradually brightenthe virtual reality content over a period, the brightening causinginitially dimmed virtual reality content to be brightened to until thevirtual reality content is displayed in a source format.

In Example 21, the subject matter of any one or more of Examples 1-20optionally include wherein to present virtual reality content in theformat based on the real-world environmental condition, the virtualreality transition engine is to: determine a noise level of anenvironment around the user; and gradually increase a noise level of thevirtual reality content to be closer to the noise level of theenvironment around the user, when the noise level of the real-worldenvironment is greater than the noise level of the virtual realitycontent.

Example 22 is a method of virtual reality transitions, the methodcomprising: detecting, at a head-mounted display, a trigger eventinitiated by a user of the head-mounted display; determining areal-world environmental condition; and presenting, by a head-mounteddisplay, virtual reality content in a format based on the real-worldenvironmental condition.

In Example 23, the subject matter of Example 22 optionally includeswherein detecting the trigger event comprises detecting a voice commandissued by the user.

In Example 24, the subject matter of any one or more of Examples 22-23optionally include wherein detecting the trigger event comprisesdetecting a gesture made by the user.

In Example 25, the subject matter of any one or more of Examples 22-24optionally include wherein detecting the trigger event comprisesdetecting a user interface interaction performed by the user.

In Example 26, the subject matter of any one or more of Examples 22-25optionally include wherein detecting the trigger event comprisesdetecting a button press performed by the user.

In Example 27, the subject matter of any one or more of Examples 22-26optionally include wherein determining the real-world environmentalcondition comprises accessing sensor data including luminance datadescribing an environment around the user.

In Example 28, the subject matter of Example 27 optionally includeswherein the luminance data is obtained from a camera array.

In Example 29, the subject matter of any one or more of Examples 27-28optionally include wherein the luminance data is obtained from a lightmeter.

In Example 30, the subject matter of any one or more of Examples 27-29optionally include wherein the luminance data is obtained from aluminosity sensor.

In Example 31, the subject matter of any one or more of Examples 22-30optionally include wherein determining the real-world environmentalcondition comprises accessing sensor data including noise datadescribing an environment around the user.

In Example 32, the subject matter of Example 31 optionally includeswherein the noise data is obtained from a microphone coupled to thehead-mounted display.

In Example 33, the subject matter of any one or more of Examples 22-32optionally include wherein presenting virtual reality content in theformat based on the real-world environmental condition comprises:determining a location and an intensity of a real-world light source inan environment around the user; and presenting a bright area in thevirtual reality content in a position that corresponds with the locationof the real-world light source.

In Example 34, the subject matter of Example 33 optionally includesadjusting the bright area from a first brightness level to a secondbrightness level, the second brightness level closer to the intensity ofthe real-world light source than the first brightness level.

In Example 35, the subject matter of Example 34 optionally includeswherein adjusting the bright area comprises: adjusting the bright areafrom the first brightness level to the second brightness level over aperiod.

In Example 36, the subject matter of any one or more of Examples 33-35optionally include determining a color of the real-world light source;and presenting the bright area using a color that is similar to thecolor of the real-world light source.

In Example 37, the subject matter of any one or more of Examples 33-36optionally include gradually dimming the virtual reality content over aperiod, the dimming causing initially brightened virtual reality contentto be dimmed until the virtual reality content is displayed in a sourceformat.

In Example 38, the subject matter of any one or more of Examples 22-37optionally include wherein presenting virtual reality content in theformat based on the real-world environmental condition comprises:determining a brightness level of an environment around the user; anddimming the virtual reality content closer to the brightness level ofthe real-world environment, when the brightness level of the real-worldenvironment is less than a brightness level of the virtual realitycontent.

In Example 39, the subject matter of Example 38 optionally includeswherein dimming the virtual reality content comprises: gradually dimmingthe virtual reality content over a period.

In Example 40, the subject matter of Example 39 optionally includeswherein the period is at least five minutes.

In Example 41, the subject matter of any one or more of Examples 38-40optionally include gradually brightening the virtual reality contentover a period, the brightening causing initially dimmed virtual realitycontent to be brightened to until the virtual reality content isdisplayed in a source format.

In Example 42, the subject matter of any one or more of Examples 22-41optionally include wherein presenting virtual reality content in theformat based on the real-world environmental condition comprises:determining a noise level of an environment around the user; andgradually increasing a noise level of the virtual reality content to becloser to the noise level of the environment around the user, when thenoise level of the real-world environment is greater than the noiselevel of the virtual reality content.

Example 43 is at least one machine-readable medium includinginstructions, which when executed by a machine, cause the machine toperform operations of any of the methods of Examples 22-42.

Example 44 is an apparatus comprising means for performing any of themethods of Examples 22-42.

Example 45 is an apparatus for virtual reality transitions, theapparatus comprising: means for detecting, at a head-mounted display, atrigger event initiated by a user of the head-mounted display; means fordetermining a real-world environmental condition; and means forpresenting, by a head-mounted display, virtual reality content in aformat based on the real-world environmental condition.

In Example 46, the subject matter of Example 45 optionally includeswherein the means for detecting the trigger event comprise means fordetecting a voice command issued by the user.

In Example 47, the subject matter of any one or more of Examples 45-46optionally include wherein the means for detecting the trigger eventcomprise means for detecting a gesture made by the user.

In Example 48, the subject matter of any one or more of Examples 45-47optionally include wherein the means for detecting the trigger eventcomprise means for detecting a user interface interaction performed bythe user.

In Example 49, the subject matter of any one or more of Examples 45-48optionally include wherein the means for detecting the trigger eventcomprise means for detecting a button press performed by the user.

In Example 50, the subject matter of any one or more of Examples 45-49optionally include wherein the means for determining the real-worldenvironmental condition comprise means for accessing sensor dataincluding luminance data describing an environment around the user.

In Example 51, the subject matter of Example 50 optionally includeswherein the luminance data is obtained from a camera array.

In Example 52, the subject matter of any one or more of Examples 50-51optionally include wherein the luminance data is obtained from a lightmeter.

In Example 53, the subject matter of any one or more of Examples 50-52optionally include wherein the luminance data is obtained from aluminosity sensor.

In Example 54, the subject matter of any one or more of Examples 45-53optionally include wherein the means for determining the real-worldenvironmental condition comprise means for accessing sensor dataincluding noise data describing an environment around the user.

In Example 55, the subject matter of Example 54 optionally includeswherein the noise data is obtained from a microphone coupled to thehead-mounted display.

In Example 56, the subject matter of any one or more of Examples 45-55optionally include wherein the means for presenting virtual realitycontent in the format based on the real-world environmental conditioncomprise: means for determining a location and an intensity of areal-world light source in an environment around the user; and means forpresenting a bright area in the virtual reality content in a positionthat corresponds with the location of the real-world light source.

In Example 57, the subject matter of Example 56 optionally includesmeans for adjusting the bright area from a first brightness level to asecond brightness level, the second brightness level closer to theintensity of the real-world light source than the first brightnesslevel.

In Example 58, the subject matter of Example 57 optionally includeswherein the means for adjusting the bright area comprise: means foradjusting the bright area from the first brightness level to the secondbrightness level over a period.

In Example 59, the subject matter of any one or more of Examples 56-58optionally include means for determining a color of the real-world lightsource; and means for presenting the bright area using a color that issimilar to the color of the real-world light source.

In Example 60, the subject matter of any one or more of Examples 56-59optionally include means for gradually dimming the virtual realitycontent over a period, the dimming causing initially brightened virtualreality content to be dimmed until the virtual reality content isdisplayed in a source format.

In Example 61, the subject matter of any one or more of Examples 45-60optionally include wherein the means for presenting virtual realitycontent in the format based on the real-world environmental conditioncomprise: means for determining a brightness level of an environmentaround the user; and means for dimming the virtual reality contentcloser to the brightness level of the real-world environment, when thebrightness level of the real-world environment is less than a brightnesslevel of the virtual reality content.

In Example 62, the subject matter of Example 61 optionally includeswherein the means for dimming the virtual reality content comprises:means for gradually dimming the virtual reality content over a period.

In Example 63, the subject matter of Example 62 optionally includeswherein the period is at least five minutes.

In Example 64, the subject matter of any one or more of Examples 61-63optionally include means for gradually brightening the virtual realitycontent over a period, the brightening causing initially dimmed virtualreality content to be brightened to until the virtual reality content isdisplayed in a source format.

In Example 65, the subject matter of any one or more of Examples 45-64optionally include wherein the means for presenting virtual realitycontent in the format based on the real-world environmental conditioncomprise: means for determining a noise level of an environment aroundthe user; and means for gradually increasing a noise level of thevirtual reality content to be closer to the noise level of theenvironment around the user, when the noise level of the real-worldenvironment is greater than the noise level of the virtual realitycontent.

Example 66 is at least one machine-readable medium includinginstructions for virtual reality transitions, which when executed by amachine, cause the machine to perform the operations comprising:detecting, at a head-mounted display, a trigger event initiated by auser of the head-mounted display; determining a real-world environmentalcondition; and presenting, by a head-mounted display, virtual realitycontent in a format based on the real-world environmental condition.

In Example 67, the subject matter of Example 66 optionally includeswherein detecting the trigger event comprises detecting a voice commandissued by the user.

In Example 68, the subject matter of any one or more of Examples 66-67optionally include wherein detecting the trigger event comprisesdetecting a gesture made by the user.

In Example 69, the subject matter of any one or more of Examples 66-68optionally include wherein detecting the trigger event comprisesdetecting a user interface interaction performed by the user.

In Example 70, the subject matter of any one or more of Examples 66-69optionally include wherein detecting the trigger event comprisesdetecting a button press performed by the user.

In Example 71, the subject matter of any one or more of Examples 66-70optionally include wherein determining the real-world environmentalcondition comprises accessing sensor data including luminance datadescribing an environment around the user.

In Example 72, the subject matter of Example 71 optionally includeswherein the luminance data is obtained from a camera array.

In Example 73, the subject matter of any one or more of Examples 71-72optionally include wherein the luminance data is obtained from a lightmeter.

In Example 74, the subject matter of any one or more of Examples 71-73optionally include wherein the luminance data is obtained from aluminosity sensor.

In Example 75, the subject matter of any one or more of Examples 66-74optionally include wherein determining the real-world environmentalcondition comprises accessing sensor data including noise datadescribing an environment around the user.

In Example 76, the subject matter of Example 75 optionally includeswherein the noise data is obtained from a microphone coupled to thehead-mounted display.

In Example 77, the subject matter of any one or more of Examples 66-76optionally include wherein presenting virtual reality content in theformat based on the real-world environmental condition comprises:determining a location and an intensity of a real-world light source inan environment around the user; and presenting a bright area in thevirtual reality content in a position that corresponds with the locationof the real-world light source.

In Example 78, the subject matter of Example 77 optionally includesinstructions to perform the operations comprising: adjusting the brightarea from a first brightness level to a second brightness level, thesecond brightness level closer to the intensity of the real-world lightsource than the first brightness level.

In Example 79, the subject matter of Example 78 optionally includeswherein adjusting the bright area comprises: adjusting the bright areafrom the first brightness level to the second brightness level over aperiod.

In Example 80, the subject matter of any one or more of Examples 77-79optionally include instructions to perform the operations comprising:determining a color of the real-world light source; and presenting thebright area using a color that is similar to the color of the real-worldlight source.

In Example 81, the subject matter of any one or more of Examples 77-80optionally include instructions to perform the operations comprising:gradually dimming the virtual reality content over a period, the dimmingcausing initially brightened virtual reality content to be dimmed untilthe virtual reality content is displayed in a source format.

In Example 82, the subject matter of any one or more of Examples 66-81optionally include wherein presenting virtual reality content in theformat based on the real-world environmental condition comprises:determining a brightness level of an environment around the user; anddimming the virtual reality content closer to the brightness level ofthe real-world environment, when the brightness level of the real-worldenvironment is less than a brightness level of the virtual realitycontent.

In Example 83, the subject matter of Example 82 optionally includeswherein dimming the virtual reality content comprises: gradually dimmingthe virtual reality content over a period.

In Example 84, the subject matter of Example 83 optionally includeswherein the period is at least five minutes.

In Example 85, the subject matter of any one or more of Example 82-84optionally include instructions to perform the operations comprising:gradually brightening the virtual reality content over a period, thebrightening causing initially dimmed virtual reality content to bebrightened to until the virtual reality content is displayed in a sourceformat.

In Example 86, the subject matter of any one or more of Example 66-85optionally include wherein presenting virtual reality content in theformat based on the real-world environmental condition comprises:determining a noise level of an environment around the user; andgradually increasing a noise level of the virtual reality content to becloser to the noise level of the environment around the user, when thenoise level of the real-world environment is greater than the noiselevel of the virtual reality content.

Example 87 is a head-mounted display system for providing virtualreality transitions, the system comprising: a processor subsystem; andat least one machine-readable medium including instructions, which whenexecuted by the processor subsystem, cause the processor subsystem to:detect a trigger event initiated by a user of the head-mounted display;determine a real-world environmental condition; and present virtualreality content in a format based on the real-world environmentalcondition.

In Example 88, the subject matter of Example 87 optionally includeswherein to detect the trigger event, the processor subsystem is todetect a voice command issued by the user.

In Example 89, the subject matter of any one or more of Example 87-88optionally include wherein to detect the trigger event, the processorsubsystem is to detect a gesture made by the user.

In Example 90, the subject matter of any one or more of Example 87-89optionally include wherein to detect the trigger event, the processorsubsystem is to detect a user interface interaction performed by theuser.

In Example 91, the subject matter of any one or more of Example 87-90optionally include wherein to detect the trigger event, the processorsubsystem is to detect a button press performed by the user.

In Example 92, the subject matter of any one or more of Example 87-91optionally include wherein to determine the real-world environmentalcondition, the processor subsystem is to access sensor data includingluminance data describing an environment around the user.

In Example 93, the subject matter of Example 92 optionally includeswherein the luminance data is obtained from a camera array.

In Example 94, the subject matter of any one or more of Example 92-93optionally include wherein the luminance data is obtained from a lightmeter.

In Example 95, the subject matter of any one or more of Example 92-94optionally include wherein the luminance data is obtained from aluminosity sensor.

In Example 96, the subject matter of any one or more of Example 87-95optionally include wherein to determine the real-world environmentalcondition, the processor subsystem is to access sensor data includingnoise data describing an environment around the user.

In Example 97, the subject matter of Example 96 optionally includeswherein the noise data is obtained from a microphone coupled to thehead-mounted display.

In Example 98, the subject matter of any one or more of Example 87-97optionally include wherein to present virtual reality content in theformat based on the real-world environmental condition, the processorsubsystem is to: determine a location and an intensity of a real-worldlight source in an environment around the user; and present a brightarea in the virtual reality content in a position that corresponds withthe location of the real-world light source.

In Example 99, the subject matter of Example 98 optionally includeswherein the processor subsystem is to adjust the bright area from afirst brightness level to a second brightness level, the secondbrightness level closer to the intensity of the real-world light sourcethan the first brightness level.

In Example 100, the subject matter of Example 99 optionally includeswherein to adjust the bright area, the processor subsystem is to adjustthe bright area from the first brightness level to the second brightnesslevel over a period.

In Example 101, the subject matter of any one or more of Examples 98-100optionally include wherein the processor subsystem is to determine acolor of the real-world light source, and present the bright area usinga color that is similar to the color of the real-world light source.

In Example 102, the subject matter of any one or more of Examples 98-101optionally include wherein the processor subsystem is to gradually dimthe virtual reality content over a period, the dimming causing initiallybrightened virtual reality content to be dimmed until the virtualreality content is displayed in a source format.

In Example 103, the subject matter of any one or more of Examples 87-102optionally include wherein to present virtual reality content in theformat based on the real-world environmental condition, the processorsubsystem is to: determine a brightness level of an environment aroundthe user; and dim the virtual reality content closer to the brightnesslevel of the real-world environment, when the brightness level of thereal-world environment is less than a brightness level of the virtualreality content.

In Example 104, the subject matter of Example 103 optionally includeswherein to dim the virtual reality content, the processor subsystem isto gradually dim the virtual reality content over a period.

In Example 105, the subject matter of Example 104 optionally includeswherein the period is at least five minutes.

In Example 106, the subject matter of any one or more of Examples103-105 optionally include wherein the processor subsystem is togradually brighten the virtual reality content over a period, thebrightening causing initially dimmed virtual reality content to bebrightened to until the virtual reality content is displayed in a sourceformat.

In Example 107, the subject matter of any one or more of Examples 87-106optionally include wherein to present virtual reality content in theformat based on the real-world environmental condition, the processorsubsystem is to: determine a noise level of an environment around theuser; and gradually increase a noise level of the virtual realitycontent to be closer to the noise level of the environment around theuser, when the noise level of the real-world environment is greater thanthe noise level of the virtual reality content.

Example 108 is at least one machine-readable medium includinginstructions, which when executed by a machine, cause the machine toperform operations of any of the operations of Example 1-107.

Example 109 is an apparatus comprising means for performing any of theoperations of Example 1-107.

Example 110 is a system to perform the operations of any of the Example1-107.

Example 111 is a method to perform the operations of any of the Examples1-107.

The above detailed description includes references to the accompanyingdrawings, which form a part of the detailed description. The drawingsshow, by way of illustration, specific embodiments that may bepracticed. These embodiments are also referred to herein as “examples.”Such examples may include elements in addition to those shown ordescribed. However, also contemplated are examples that include theelements shown or described. Moreover, also contemplated are examplesusing any combination or permutation of those elements shown ordescribed (or one or more aspects thereof), either with respect to aparticular example (or one or more aspects thereof), or with respect toother examples (or one or more aspects thereof) shown or describedherein.

Publications, patents, and patent documents referred to in this documentare incorporated by reference herein in their entirety, as thoughindividually incorporated by reference. In the event of inconsistentusages between this document and those documents so incorporated byreference, the usage in the incorporated reference(s) are supplementaryto that of this document; for irreconcilable inconsistencies, the usagein this document controls.

In this document, the terms “a” or “an” are used, as is common in patentdocuments, to include one or more than one, independent of any otherinstances or usages of “at least one” or “one or more.” In thisdocument, the term “or” is used to refer to a nonexclusive or, such that“A or B” includes “A but not B,” “B but not A,” and “A and B,” unlessotherwise indicated. In the appended claims, the terms “including” and“in which” are used as the plain-English equivalents of the respectiveterms “comprising” and “wherein.” Also, in the following claims, theterms “including” and “comprising” are open-ended, that is, a system,device, article, or process that includes elements in addition to thoselisted after such a term in a claim are still deemed to fall within thescope of that claim. Moreover, in the following claims, the terms“first,” “second,” and “third,” etc. are used merely as labels, and arenot intended to suggest a numerical order for their objects.

The above description is intended to be illustrative, and notrestrictive. For example, the above-described examples (or one or moreaspects thereof) may be used in combination with others. Otherembodiments may be used, such as by one of ordinary skill in the artupon reviewing the above description. The Abstract is to allow thereader to quickly ascertain the nature of the technical disclosure. Itis submitted with the understanding that it will not be used tointerpret or limit the scope or meaning of the claims. Also, in theabove Detailed Description, various features may be grouped together tostreamline the disclosure. However, the claims may not set forth everyfeature disclosed herein as embodiments may feature a subset of saidfeatures. Further, embodiments may include fewer features than thosedisclosed in a particular example Thus, the following claims are herebyincorporated into the Detailed Description, with a claim standing on itsown as a separate embodiment. The scope of the embodiments disclosedherein is to be determined with reference to the appended claims, alongwith the full scope of equivalents to which such claims are entitled.

What is claimed is:
 1. A head-mounted display system for providingvirtual reality transitions, the system comprising: a virtual realitytransition engine, implemented in processing circuitry, to detect atrigger event initiated by a user of the head-mounted display system,the trigger event indicating an intent to exit a virtual reality sessionand remove the head-mounted display system; a sensor array to determinea real-world environmental condition; and a graphics driver to presentvirtual reality content in a format based on the real-worldenvironmental condition, wherein to present virtual reality content inthe format based on the real-world environmental condition, the graphicsdriver is to: determine a location and an intensity of a real-worldlight source in an environment around the user; present a bright areaoverlaying the virtual reality content in a position that correspondswith the location of the real-world light source; and adjust the brightarea from a first brightness level to a second brightness level inresponse to the trigger event, the second brightness level brighter thanthe first brightness level and the second brightness level closer to theintensity of the real-world light source than the first brightnesslevel.
 2. The system of claim 1, wherein to determine the real-worldenvironmental condition, the sensor array is to access sensor dataincluding luminance data describing an environment around the user. 3.The system of claim 2, wherein the luminance data is obtained from a catera array.
 4. The system of claim 1, wherein to adjust the bright area,the graphics driver is to adjust the bright area from the firstbrightness level to the second brightness level over a period.
 5. Thesystem of claim 1, wherein the virtual reality transition engine is todetermine a color of the real-world light source, and wherein thegraphics driver is to present the bright area using a color that issimilar to the color of the real-world light source.
 6. The system ofclaim 1, wherein the graphics driver is to gradually dim the virtualreality content over a period, the dimming causing initially brightenedvirtual reality content to be dimmed until the virtual reality contentis displayed in a source format.
 7. The system of claim 1, wherein topresent virtual reality content in the format based on the real-worldenvironmental condition, the graphics driver is to: determine abrightness level of an environment around the user; and dim the virtualreality content closer to the brightness level of the real-worldenvironment, when the brightness level of the real-world environment isless than a brightness level of the virtual reality content.
 8. A methodfor virtual reality transitions, which when executed by a machine, causethe machine to perform the operations comprising: detecting, at ahead-mounted display, a trigger event initiated by a user of thehead-mounted display, the trigger event indicating an intent to exit avirtual reality session and remove the head-mounted display; determininga real-world environmental condition; and presenting, by thehead-mounted display, virtual reality content in a format based on thereal-world environmental condition, wherein presenting virtual realitycontent in the format based on the real-world environmental conditioncomprises: determining a location and an intensity of a real-world lightsource in an environment around the user; presenting a bright areaoverlaying the virtual reality content in a position that correspondswith the location of the real-world light source; and adjusting thebright area from a first brightness level to a second brightness levelin response to the trigger event, the second brightness level brighterthan the first brightness level and the second brightness level closerto the intensity of the real-world light source than the firstbrightness level.
 9. At least one non-transitory machine-readable mediumof virtual reality transitions, the at least one machine-readable mediumcomprising: detecting, at a head-mounted display, a trigger eventinitiated by a user of the head-mounted display, the trigger eventindicating an intent to exit a virtual reality session and remove thehead-mounted display; determining a real-world environmental condition;and presenting, by the head-mounted display, virtual reality content ina format based on the real-world environmental condition, whereinpresenting virtual reality content in the format based on the real-worldenvironmental condition comprises: determining a location and anintensity of a real-world light source in an environment around theuser; presenting a bright area overlaying the virtual reality content ina position that corresponds with the location of the real-world lightsource; and adjusting the bright area from a first brightness level to asecond brightness level in response to the trigger event, the secondbrightness level brighter than the first brightness level and the secondbrightness level closer to the intensity of the real-world light sourcethan the first brightness level.
 10. The at least one non-transitorymachine-readable medium of claim 9, wherein determining the real-worldenvironmental condition comprises accessing sensor data includingluminance data describing an environment around the user.
 11. The atleast one non-transitory machine-readable medium of claim 9, whereinadjusting the bright area comprises: adjusting the bright area from thefirst brightness level to the second brightness level over a period. 12.The at least one non-transitory machine-readable medium of claim 9,further comprising instructions to perform the operations comprising:determining a color of the real-world light source; and presenting thebright area using a color that is similar to the color of the real-worldlight source.
 13. The at least one non-transitory machine-readablemedium of claim 9, further comprising instructions to perform theoperations comprising gradually dimming the virtual reality content overa period, the dimming causing initially brightened virtual realitycontent to be dimmed until the virtual reality content is displayed in asource format.
 14. The at least one non-transitory machine-readablemedium of claim 9, wherein presenting virtual reality content in theformat based on the real-world environmental condition comprises:determining a brightness level of an environment around the user; anddimming the virtual reality content closer to the brightness level ofthe real-world environment, when the brightness level of the real-worldenvironment is less than a brightness level of the virtual realitycontent.
 15. The at least one non-transitory machine-readable medium ofclaim 14, wherein dimming the virtual reality content comprises:gradually dimming the virtual reality content over a period.
 16. The atleast one non-transitory machine-readable medium of claim 15, whereinthe period is at least five minutes.
 17. The at least one non-transitorymachine-readable medium of claim 14, further comprising: graduallybrightening the virtual reality content over a period, the brighteningcausing initially dimmed virtual reality content to be brightened tountil the virtual reality content is displayed in a source format.